<?php
namespace Home\Controller;


class LoginController extends MainController {


    public $userapi = object;

    /**
     *  构造
     */
    public function __construct()
    {
        parent::__construct();
        $this -> userapi = A('Home/MemberApi');
    }
    
    /**
     * 后台用户登录
     */
    public function login($username = null, $password = null, $verify = null){
        if(IS_POST){ 
            /* 检测验证码 TODO: 
            if(!check_verify($verify)){ 
                $this->error('验证码输入错误！'); 
            } 
            /* 调用登录 */
            $uid = $this -> userapi -> login($username, $password); 
            if(0 < $uid){ //UC登录成功 
                /* 登录用户 */ 
                $Member = D('Member');
                if($Member->login($uid)){ //登录用户
                    //记录行为
                    action_log('PC', 'Login_login', $uid, $uid);
                    //
                    //TODO:跳转到登录前页面
                    $this->success('登录成功！', U('Index/index'));
                } else {
                    $this->error($Member->getError());
                }
            } else { //登录失败
                switch($uid) {
                    case -1: $error = '用户不存在或被禁用！'; break; //系统级别禁用
                    case -2: $error = '密码错误！'; break;
                    default: $error = '未知错误！'; break; // 0-接口参数错误（调试阶段使用）
                }
                $this->error($error);
            }
        } else {
            if(is_login()){
                $this->redirect('Index/index');
            }else{
                /* 读取配置 */

                $this->display();
            }
        }
    }

    /* 退出登录 */
    public function logout(){
        if(is_login()){
            D('Member')->logout();
            //记录行为
            action_log('PC', 'Login_logout', UID, UID);
            //
            //session('[destroy]');
            $this->success('退出成功！', U('login/login'));
        } else {
            $this->redirect('login/login');
        }
    }

    /**
     * 验证码
     */
    public function verify(){
        $verify = new \Think\Verify();
        $verify->entry(1);
    }

    /**
     * @Author   fly
     * @DateTime 2018-03-13
     *
    public function loginIn(){
        //检测
        if($_POST)  $result = D('user') -> loginCheck();
        else $result['status'] = 4;
        //
        switch ($result['status']) {
            case 1: //已经登录
                $this -> error("您已登录" , U('Home/index/index'));
                break;
            case 2:
                session('userid' , $result['info']['id']);
                session('userinfo' , $result['info']);
                redirect(U('Home/index/index3d'));
                break;
            case 3:
                $this -> error("用户名或密码错误");
                break;
                
            default:
                $this -> display();
                break;
        }
    }
    
    /**
     * @Function    退出
     * @Author      fly
     *
    public function loginOut(){
        session('userid' , null);
        session('userinfo' , null);
        //页面跳转
        //$this -> success("退出成功" , U('loginIn'));
        redirect(U('Home/Login/loginIn'));
    }

    /**
     * 
     */
}
